package edu.dali.enterprise_test.dao.mapper.product;

import edu.dali.enterprise_test.model.vo.Dto;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

@Repository
public interface ProductMapper {

    /**
     * 获取商品列表
     * @param dto
     * @return
     */
    public List<Dto> getProduct(Dto dto);

    /**
     * 根据id获取商品信息
     * @param dto
     * @return
     */
    public Dto getProductById(Dto dto);
    /**
     * 添加商品
     * @param dto
     */
    public void addProduct(Dto dto);

    /**
     * 删除商品
     * @param id
     */
    public void deleteProduct(String id);

    /**
     * 修改商品
     * @param dto
     */
    public void updateProduct(Dto dto);

    /**
     * 获取可售商铺列表
     * @param dto
     * @return
     */
    public List<Dto> productList(Dto dto);

    /**
     * 减少库存
     * @param dto
     */
    public void reduceStock(Dto dto);

    /**
     * 查询库存
     * @param id
     * @return
     */
    public int queryStock(String id);

    /**
     * 获取库存
     * @param param
     * @return
     */
    public List<Dto> queryStockByIds(Map<String ,Object> param );

    /**
     * 导入时增加库存
     * @param dto
     */
    public void increaseStcok(Dto dto);

    /**
     * 查询库存是否存在
     * @param dto
     * @return
     */
    public int queryStockByQid(Dto dto);
}
